Clover coverage report - Enterprise Web Services - 1.0
Coverage timestamp: Mon May 30 2005 17:10:32 CEST
file stats: LOC: 164   Methods: 7
NCLOC: 92   Classes: 1
30 day Evaluation Version distributed via the Maven Jar Repository. Clover is not free. You have 30 days to evaluate it. Please visit http://www.thecortex.net/clover to obtain a licensed version of Clover
 
 Source file Conditionals Statements Methods TOTAL
J2eeBindingWriter.java 50% 77.4% 71.4% 67.9%
coverage coverage
 1   
 /*
 2   
  * Copyright 2001-2004 The Apache Software Foundation.
 3   
  * 
 4   
  * Licensed under the Apache License, Version 2.0 (the "License");
 5   
  * you may not use this file except in compliance with the License.
 6   
  * You may obtain a copy of the License at
 7   
  * 
 8   
  *      http://www.apache.org/licenses/LICENSE-2.0
 9   
  * 
 10   
  * Unless required by applicable law or agreed to in writing, software
 11   
  * distributed under the License is distributed on an "AS IS" BASIS,
 12   
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13   
  * See the License for the specific language governing permissions and
 14   
  * limitations under the License.
 15   
  */
 16   
 package org.apache.geronimo.ews.jaxrpcmapping;
 17   
 
 18   
 import java.io.IOException;
 19   
 import javax.wsdl.Binding;
 20   
 import org.apache.axis.utils.Messages;
 21   
 import org.apache.axis.wsdl.gen.Generator;
 22   
 import org.apache.axis.wsdl.symbolTable.BindingEntry;
 23   
 import org.apache.axis.wsdl.symbolTable.PortTypeEntry;
 24   
 import org.apache.axis.wsdl.symbolTable.SymbolTable;
 25   
 import org.apache.axis.wsdl.toJava.JavaStubWriter;
 26   
 import org.apache.axis.wsdl.toJava.Utils;
 27   
 
 28   
 /**
 29   
  * This is Wsdl2java's Binding Writer.  It writes the following files, as appropriate:
 30   
  * <bindingName>Stub.java, <bindingName>Skeleton.java, <bindingName>Impl.java.
 31   
  *
 32   
  * @author Ias (iasandcb@tmax.co.kr)
 33   
  */
 34   
 public class J2eeBindingWriter implements Generator {
 35   
     protected Generator stubWriter = null;
 36   
     protected Generator skelWriter = null;
 37   
     protected Generator implWriter = null;
 38   
     protected Generator interfaceWriter = null;
 39   
     protected J2eeEmitter emitter;
 40   
     protected Binding binding;
 41   
     protected SymbolTable symbolTable;
 42   
 
 43   
     // This is the dynamic var key for the SEI (Service Endpoint
 44   
     // Interface) name.  This name could either be derived from
 45   
     // the portType or the binding.  The generatorPass fills
 46   
     // this dynamic var in and it is used in the writers that
 47   
     // need this SEI name.
 48   
     public static String INTERFACE_NAME = "interface name";
 49   
 
 50   
     /**
 51   
      * Constructor.
 52   
      */
 53  3
     public J2eeBindingWriter(J2eeEmitter emitter,
 54   
                              Binding binding,
 55   
                              SymbolTable symbolTable) {
 56  3
         this.emitter = emitter;
 57  3
         this.binding = binding;
 58  3
         this.symbolTable = symbolTable;
 59   
     } // ctor
 60   
 
 61   
     /**
 62   
      * getJavaInterfaceWriter
 63   
      */
 64  3
     protected Generator getJavaInterfaceWriter(J2eeEmitter emitter,
 65   
                                                PortTypeEntry ptEntry,
 66   
                                                BindingEntry bEntry,
 67   
                                                SymbolTable st) {
 68   
 //TODO                                                   
 69   
 //        if(emitter.isSeiNeeded()){
 70   
 //            return new J2eeInterfaceWriter(emitter, ptEntry, bEntry, st);
 71   
 //        }else{                                        
 72   
 //            return null;            
 73   
 //        }    
 74  3
         return new J2eeInterfaceWriter(emitter, ptEntry, bEntry, st);
 75   
     }
 76   
 
 77   
     /**
 78   
      * getJavaStubWriter
 79   
      */
 80  3
     protected Generator getJavaStubWriter(J2eeEmitter emitter,
 81   
                                           BindingEntry bEntry,
 82   
                                           SymbolTable st) {
 83  3
         return new JavaStubWriter(emitter, bEntry, st);
 84   
     }
 85   
 
 86   
     /**
 87   
      * getJavaSkelWriter
 88   
      */
 89  0
     protected Generator getJavaSkelWriter(J2eeEmitter emitter,
 90   
                                           BindingEntry bEntry,
 91   
                                           SymbolTable st) {
 92  0
         return new J2eeSkelWriter(emitter, bEntry, st);
 93   
     }
 94   
 
 95   
     /**
 96   
      * getJavaImplWriter
 97   
      */
 98  0
     protected Generator getJavaImplWriter(J2eeEmitter emitter,
 99   
                                           BindingEntry bEntry,
 100   
                                           SymbolTable st) {
 101  0
         return new J2eeImplWriter(emitter, bEntry, st);
 102   
     }
 103   
 
 104   
     /**
 105   
      * Write all the binding bindings:  stub, skeleton, and impl.
 106   
      */
 107  3
     public void generate() throws IOException {
 108  3
         setGenerators();
 109  3
         if (interfaceWriter != null) {
 110  3
             interfaceWriter.generate();
 111   
         }
 112  3
         if (stubWriter != null) {
 113  3
             stubWriter.generate();
 114   
         }
 115  3
         if (skelWriter != null) {
 116  0
             skelWriter.generate();
 117   
         }
 118  3
         if (implWriter != null) {
 119  0
             implWriter.generate();
 120   
         }
 121   
     } // generate
 122   
 
 123   
     /**
 124   
      * setGenerators
 125   
      * Logic to set the generators that are based on the Binding
 126   
      * This logic was moved from the constructor so extended interfaces
 127   
      * can more effectively use the hooks.
 128   
      */
 129  3
     protected void setGenerators() {
 130  3
         BindingEntry bEntry = symbolTable.getBindingEntry(binding.getQName());
 131   
         
 132   
         // Interface writer
 133  3
         PortTypeEntry ptEntry =
 134   
                 symbolTable.getPortTypeEntry(binding.getPortType().getQName());
 135  3
         if (ptEntry.isReferenced()) {
 136  3
             interfaceWriter = getJavaInterfaceWriter(emitter, ptEntry, bEntry, symbolTable);
 137   
         }
 138  3
         if (bEntry.isReferenced()) {
 139   
             // Stub writer
 140  3
             stubWriter = getJavaStubWriter(emitter, bEntry, symbolTable);
 141   
 
 142   
             // Skeleton and Impl writers
 143  3
             if (emitter.isServerSide()) {
 144  3
                 if (emitter.isSkeletonWanted()) {
 145  0
                     skelWriter = getJavaSkelWriter(emitter, bEntry, symbolTable);
 146   
                 }
 147  3
                 String fileName = Utils.getJavaLocalName(bEntry.getName())
 148   
                         + "Impl.java";
 149  3
                 try {
 150  3
                     if (Utils.fileExists(fileName,
 151   
                             binding.getQName().getNamespaceURI(),
 152   
                             emitter.getNamespaces())) {
 153  3
                         System.out.println(Messages.getMessage("wontOverwrite", fileName));
 154   
                     } else {
 155  0
                         implWriter = getJavaImplWriter(emitter, bEntry, symbolTable);
 156   
                     }
 157   
                 } catch (IOException ioe) {
 158  0
                     System.err.println(Messages.getMessage("fileExistError00", fileName));
 159   
                 }
 160   
             }
 161   
         }
 162   
     }
 163   
 } // class JavaBindingWriter
 164